TELE3118
Handbook Description for TELE3118 Network Technologies Network architectures in terms of topology, role (client/server, peer-to-peer), and layered specification. Packet and circuit switching. Physical characteristics of network transmission links. Medium access control protocols for wired links (e.g. Ethernet) and wireless links (e.g. 802.11). Protocols for error and flow control and their link layer application. Interconnection of networks using bridges, switches and routers. Routing techniques, including Dijkstra's algorithm, distance vector and link state routing. Addressing and naming. Network congestion control. End-to-end protocols for matching applications to networks, including TCP and UDP. Network applications, such as web (HTTP), email (SMTP, POP, IMAP), and streaming media (e.g.VOIP). Articles * Networking Acronym Guide * RFC Revision Notes from First Half of Course Week 1 – Physical Layer • analogue medium only allows band of frequencies • digital signal not distinguishable • more harmonics clearer signal • signal changes too fast – not easily distinguishable • bandwidth limited slows down signal • work limitations of the medium • physical media – aim to get bits across • bit – propagates between transmitter/receiver pair • physical link – lies between transmitter and receiver • guided media – signals propagate in solid media: copper, fiber, coax • unguided media – signals propagate freely: wireless • twisted pair – telephone line • category is dependent on the number of twists per unit length • cancel electric field by twisting – get rid of interference • higher speed needs higher number of twists • coaxial cable – two concentric copper conductors – not twisted :* bi directional :* potential difference gets rid of interference • fiber optic cable – only need one fiber :* glass fiber carrying light pulses :* same capacity with copper would need massive wire :* 1 is a pulse of light 0 is nothing :* low error rate :* high speed :* light reflects back into the medium :* can’t use visible light :* light disperses over distance :* EDFA – pumps energy into the light (only have optical amplification) • wireless – signal carried in electromagnetic spectrum :* no physical wire :* can have bad quality – reflection, interference • link types :* terrestrial microwave – MCI (use towers along microwave waves) :* LAN :* wide-area – smart phone :* satellite • free-space optics – good for small distance – heat of the sun creates turbulence to reflect beam • communication satellites – high latency • modem converts from analog phone to digital computer • modulation – amplitude modulation, frequency modulation, phase modulation • modulation allows for more than one bit to be carried on the signal • modem – modulation/demodulation • baud-rate : symbols/sec • bit rate = baud-rate x bits/symbol • frequency division multiplexing – each user on a different band • time division multiplexing – each user has a section time – sample voice • wavelength division multiplexing – specific to optic fibers :* take from lots of electronic wires :* no power supply but operating at a Tbps :* don’t need servicing :* a triangular prism combines light :: Week 2 – Data Link Layer • framing – taking zeros and ones and changing them to letters • data-link layer – has responsibility of transferring datagram from one node to adjacent node over a link • functions :* framing :* error control – wireless medium and optical :* addressing and multiple-access control :* flow control :* reliable transfers • flow control and reliable transfers can be done at other layers • framing is very fragile –tells length of message • two types of framing :* fixed size packets :* delimiter or flag that acts as an escape sequence • bit stuffing – so the receiver doesn’t end the package early Error Detection and Correction • detection for 1 bit requires more than a 2-bit hamming distance • parity checking – make sure the parity bits cause an even number of ones • parity checking detects but doesn’t correct • correction of x-bits: hamming distance = 2x + 1 • hamming distance – the number of bit positions two code words differ • message size n'' = data bits ''m + redundant bits r'' • around every valid code word in space there should be no other valid code words • 1-bit error correction: 1 + m + r • can detect if parity bit switched but can’t correct • error correction is fairly low as overheads are very high • can have multiples parity bits • checksumming is another method – not optimal • treat the message as a polynomial – remainder is non-zero there is an error • can detect all errors less than r+1 bits • two types of “links” – point-to-point and broadcast • the medium access control protocol deals with the links • multiple access protocol – distributed algorithm that determines how nodes share channels • ideal multiple access protocol – broadcast channel of rate R bps : 1. when one node wants to transmit it can send at rate R : 2. when M nodes want to transmit, each can send average rate R/M : 3. fully decentralized – don’t want one terminal more susceptible to failures : 4. simple • MAC protocols three broad classes :* channel partitioning – channel can be wasted – use multiplexing :* random access – anyone can have a go – more collisions :* taking turns • random access protocol – current technology • when node has a packet to send – have access to the whole channel • random access MAC protocol specifies how to detect and recover from collisions • examples of random access MAC: ALOHA, slotted ALOHA, CSMA, CSMA/CD, CSMA/CA • slotted ALOHA – simplest scheme :* when node obtains fresh frame, it transmits in next slot :* no collision node can transmit again in next slot :* collision node retransmits frame in each subsequent slot with probability p • slotted ALOHA assumptions : :* all frames same size :* time is divides into equal slots :* nodes only transmit at beginning of slot :* nodes are synchronised :* all nodes detect collisions • slotted ALOHA pros :* node can continuously transmit if it is the only active node :* highly decentralised :* simple • slotted ALOHA cons :* collisions waste slots :* idle slots :* clock synchronisation :* garbled data • slotted ALOHA efficiency :* efficiency is the long run fraction of successful slots when there are many nodes each with many packets to send :* channel used for useful transmissions 37% • unslotted ALOHA – simpler, no synchronization :* transmit immediately on arrival :* collision probability increases :* the efficiency probability is 18% which is even worse • CSMA – carrier sense multiple access – listen before transmit – if busy defer transfer • CSMA collisions – still occur due to propagation delay but a lot less common • if there is a collision the entire packet transmission time wasted • CSMA/CD – collision detection :* collisions detected within a short time :* colliding transmissions aborted, reducing channel wastage :* human analogy: the polite conversationalist :* easy on wire but hard on wireless – often have to use another strategy :* collision can be decreased if you start with a small package • “taking turns” – used in wireless medium • channel partitioning – share channel efficiency • hidden terminal problem – can’t detect the channel is busy • random access – efficient at low load • “taking turns” – best of both worlds • “taking turns” :* polling – master node invites slaves nodes to transmit in turn :* concerns with polling : polling overhead, latency and single failure point (master) :* token passing – control token passed from one node to next :* concerns with token passing : token overhead, latency and single point of failure (token) • could have receiver listening to fix hidden terminal problem '''Week 3 –Data Link Layer' • 802.11b – first protocol similar to CDMA :: 2.4-5 GHz unlicensed radio spectrum :: up to 11 Mbps • 802.11a – next protocol but can’t connect to .11b :* 5-6 GHz :* up to 54 Mbps • 802.11g – current standard :* 2.4-5 GHz can connect to .11a :* combination of two previous protocols :* changed the modulation • can’t have collision detection in wireless network only collision avoidance • avoid hidden terminal problem using carrier sense multiple access • 802.11 – difficult to tell if something is being received during transmission • before a message is sent DIFS – distributed inter-frame spacing (avoids collision) – low duration • after a message there is an SIFS (short inter-frame spacing) before the acknowledgment is sent • avoiding collisions – allow sender to receive channel rather than random access of data frames • request-to-send (RTS) is sent to begin with to avoid collision • clear-to-send (CTS) is sent back to inform its ok to go • RTS or CTS are heard by all nodes so no one will send • RTS collisions are OK as they are small • the Ethernet connection system is based on a bus system – looked at problem of interconnecting computers • Ethernet address has 6 bytes :* upper 24 bits – organizations code :* lower 24 bits – unique :* unicast – lowest bit is 0 :* multicast – highest bit is 1 :* if the address is all ones than it is a broadcast and so all computers hear • no hierarchical assignment for Ethernet addressing • Ethernet is unreliable and connectionless :* no handshaking between sending and receiving adapter • Ethernet uses CSMA/CD – adapter doesn’t transmit if it senses another adapter sending :* exponential back off if a collision occurs • Ethernet algorithm : 1. adapter receives datagram : 2. channel idle – begins to transmit : 3. transmits with no collision – discards the frame : 4. collision – enters exponential back off • exponential back off – each time there is a collision it increases the delay slots • the set goes from 0 to • two types of Ethernet technologies – coax and twisted pair • coax : :* 10Base2 :* 10Mbps, 200 metres max cable length :* baseband Ethernet • twisted pair: :* 10BaseT/100BaseT :* T means twisted pair copper :* 10/100 Mbps :* nodes connect to a hub in star topology • hubs – only understand physical layer – dead technology • hub broadcasts to all computers connected to the same hub • use switches now • on a hub only one device can transmit at the same time – all must be the same capacity • link layer switch-bridge – goes up to second layer • a switch has a switch table – which it learns based on what it sends • add more switches to increase the network • virtual local area network is a way of splitting a switch into two parts • traffic isolation – frames to/from ports 1-8 can only reach ports 1-8 • dynamic membership – ports can be dynamically assigned among VLANs • forwarding between VLANs done via routing • trunk port – carries frames between VLANs defined over multiple physical switches • loops can occur – use a spanning tree to determine which link to sever Week 4 – Network Layer • routers don’t deal with anything higher than the network layer • role of network layer – move packets from a sending host to a receiving host • IP functions : addressing, forwarding and route determination • two different network service model : connection-oriented and connection-less • host only has one connection into the internet – IP sends datagram over this link • boundary between the physical layer and the host is called the interface • router has two or more links that it is connected to they are called interface • IP requires each host and router interface to have its own address Addressing • IP address is linked to the interface rather than the host or router • each IP address is 32 bits long • IP addresses are written in dotted-decimal notation – each byte is separated by a decimal point • each IP address must be globally unique • part of the IP address is determined by the subnet • subnet – interconnects computers connected to one router • /number notation indicates that the leftmost number of bits is the subnet address – sometimes called a subnet mask • internet’s address assignment strategy is known as Classless Interdomain Routing (CIDR) • CIDR – generalizes the notion of subnet addressing :* uses dotted-decimal form : a.b.c.d/x :* where x represents the number of bits of the network – called the prefix :* an organisation is often given a range of addresses with a common prefix :* the remaining 32-x bits is the identifier in the organisation – bits that are considered when forwarding • classful addressing – less than 32 bits involved – inefficient use of address space • ISP will provide an organisation with an IP address block • ICANN (International Corporation for Assigned Names and Numbers) controls all IP addresses as well as domain names • the router address will be manually configured • host address is done by the dynamic host configuration protocol (DHCP) as opposed to manually • a host may be assigned a permanent IP address so it has the same address each time • also could have a temporary IP address that differs each time • network address translation (NAT) allows for IP addresses to differ between the home and the world • NAT-enabled router looks like one IP address to the rest of the internet • NAT translation table allows to differ between the destination computers if they have the same address • the table documents what is sent where so when something is sent back the router can tell where it came from Week 5 – Network Layer • forwarding – router must move the packet to the appropriate output link • routing – determines the end-to-end path the packets take • two cases: :* case I – hosts in same LAN :* case II – hosts in different LANs • ARP (address resolution protocol) – each IP node on LAN has ARP table :* IP/MAC address mappings for same LAN nodes :* TTL (time to live) – time after which address mapping will be forgotten :* nodes create their ARP tables without intervention from net administrator :* soft state : information that times out • routing table is in the router allows different nodes to know the address of node that is being sent to • each node has route table and ARP table • switch or route? :* lookup dMAC in MAC table :* if(dMAC interface MAC) --> switch :* else frame is for upper layer (IP) --> route • routing algorithm determines the path that is taken and the values in forwarding tables • LOOK AT IP DATAGRAM FORMAT • ICMP packets go in IP packets – checks for errors :* different ICMP messages eg. ping –checking the computer is alive • traceroute uses ICMP – finds out the addresses of the routers by sending out packets that die at each router • IPv6 – to make more address space • can’t communicate with IPv4 • changes from IPv4 to v6 :* priority – identify priority among datagrams in flow :* flow label – identify datagrams in same flow :* next header – identify upper layer protocol for data :* checksum – removed entirely to reduce processing time at each hop :* options – allowed but outside of header :* ICMPv6 – new version of ICMP – additional messages • IPv4 not compatible therefore use tunnelling to bypass IPv4 • the IPv6 message is hidden in IPv4 message to bypass IPv4 – allows not all computers needing to be changed at the same time Category:TELE3118 Category:Stage 3 Electives